package com.example.quartz.project.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.quartz.project.dto.QuartzDto;
import com.example.quartz.project.po.Quartz;

/**
 * @author 打小就爱笑捏
 * @date 2019/11/11
 */
public interface QuartzService extends IService<Quartz> {

    /**
     * 分页查询定时任务
     *
     * @param dto
     * @param page
     * @param orderList
     * @return
     */
    Object getAllByPage(QuartzDto dto, Page page, String orderList);

    /**
     * 添加定时任务
     *
     * @param dto
     * @return
     * @throws Exception
     */
    Quartz add(Quartz dto) throws Exception;

    /**
     * 修改定时任务
     *
     * @param dto
     * @return
     * @throws Exception
     */
    boolean edit(Quartz dto) throws Exception;

    /**
     * 删除定时任务
     *
     * @param dto
     * @return
     */
    int delete(Quartz dto);

    /**
     * 恢复定时任务
     *
     * @param dto
     * @return
     * @throws Exception
     */
    boolean resumeJob(Quartz dto) throws Exception;


    /**
     * 定时任务测试
     */
    void test(String param, Integer sum);

}
